////#pragma comment(linker,"/STACK:16777216") /*16Mb*/
////#pragma comment(linker,"/STACK:33554432") /*32Mb*/
//#define _CRT_SECURE_NO_DEPRECATE
//#include<iostream>
//#include<numeric>
//#include<sstream>
//#include<cstdio>
//#include<cstdlib>
//#include<cmath>
//#include<memory>
//#include<string>
//#include<vector>
//#include<cctype>
//#include<list>
//#include<queue>
//#include<deque>
//#include<stack>
//#include<map>
//#include<set>
//#include<algorithm>
//using namespace std;
//
//typedef unsigned long long      ui64;
//typedef long long               i64;
//typedef	vector<int>             VI;
//typedef	vector<bool>            VB;
//typedef	vector<VI>              VVI;
//typedef	vector<string>          VS;
//typedef	pair<i64,i64>           PII;
//typedef map<string,int>         MSI;
//typedef set<int>                SI;
//typedef set<string>             SS;
//typedef map<int,int>            MII;
//typedef	pair<double,double>     PDD;
//
//#define PB                      push_back
//#define MP                      make_pair
//#define X                       first
//#define Y                       second
//#define FOR(i, a, b)            for(int i = (a); i < (b); ++i)
//#define RFOR(i, a, b)           for(int i = (a) - 1; i >= (b); --i)
//#define CLEAR(a, b)             memset(a, b, sizeof(a))
//#define SZ(a)                   int((a).size())
//#define ALL(a)                  (a).begin(), (a).end()
//#define RALL(a)                 (a).rbegin(), (a).rend()
//#define INF                     (2000000000)
//
//i64 d(PII a, PII b) {
//	return ( (a.X-b.X+0LL)*(a.X-b.X+0LL) + (a.Y-b.Y+0LL)*(a.Y-b.Y+0LL) );
//}
//
//int main()
//{
//	i64 a,b,H;
//	scanf("%lld%lld%lld",&a,&b,&H);
//	PII A,B;
//	scanf("%lld%lld",&A.X,&A.Y);
//	scanf("%lld%lld",&B.X,&B.Y);
//	i64 h;
//	scanf("%lld",&h);
//	if(h<=H) {
//		if( a>=2*B.X && b>=2*B.X && a>=2*A.X && b>=2*A.X && a>=2*A.Y && a>=2*B.Y && b>=2*A.Y && b>=2*B.Y &&  d(MP(A.Y,A.Y),MP(a-B.Y,b-B.Y)) >= (A.Y+B.Y)*(A.Y+B.Y) )
//			cout << "YES\n";
//		else
//			cout << "NO\n";
//		return 0;
//	}
//	i64 x1 = (A.Y-A.X)*H;
//	i64 x2 = (B.Y-B.X)*H;
//	if(a*h>=2*x1 && b*h>=2*x1 && a*h>=2*x2 && b*h>=2*x2 && a>=2*B.X && b>=2*B.X && a>=2*A.X && b>=2*A.X && d(MP(x1,x1),MP(a*h-x2,b*h-x2)) >= (A.Y+B.Y)*(A.Y+B.Y)*h*h )
//		cout << "YES\n";
//	else
//		cout << "NO\n";
//	return 0;
//}